package com.tencent.qf.bascic.dal;

import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;

import java.math.BigDecimal;

@Data
@Document(indexName = "data_collect_award_profit_flow_alias")
public class AwardProfitFlowDO {
    /**
     * 流水id	order_xxx	task_xxx	mp_task_xxx
     */
    @Id
    private String id;
    /**
     * 用户uid	收益归属的uid
     */
    private String uid;
    /**
     * 区域组织id	订单生成时/报名时，uid的区域组织id快照（订单记完全组织路径的第二段区域归属）
     */
    private String areaGroupId;
    /**
     * 快照等级	uid的等级快照，订单生成时/报名时等级，TRAINEE,MEMBER,SENIOR,SUPER
     */
    private String levelId;
    /**
     * 来源类型	来源
     * profitOrder:订单收益（基础佣金、加码佣金）
     * profitMonth:团长营销任务（月月领奖励，导购营销域）
     * profitTask:团长任务收益（营销中台）
     */
    private String source;
    /**
     * 订单号	分销单号
     */
    private String plainOrderId;
    /**
     * 任务id	——	任务id	任务id
     */
    private String taskId;
    /**
     * 业务子类型	基础佣金/奖励佣金	子任务id	子任务id
     */
    private String subTask;
    /**
     * 变更类型	add-新增，change-变更，settlement-结算
     */
    private String logType;
    /**
     * 变更前金额	单位分
     */
    private BigDecimal predictAmountBefore;
    /**
     * 变更后金额	单位分
     */
    private BigDecimal predictAmountAfter;
    /**
     * 变更金额	单位分，新增+；变更+/-；结算-
     */
    private BigDecimal changeAmount;
    /**
     * 变更说明	{订单行号}+基础佣金；{订单行号}+加码佣金	任务名称+子任务名称+周期（有周期任务的需要带上）	任务名称+子任务名称+周期+贡献下级uid
     */
    private String info;
    /**
     * 扩展信息	佣金单号	任务类型 费用类型 任务周期：部分任务存在，有则上报
     */
    private String extMap;
    /**
     * 创建时间	yyyy-mm-dd hh:MM:ss
     */
    private String createTm;
    /**
     * 更新时间	yyyy-mm-dd hh:MM:ss
     */
    private String updateTm;
    /**
     * 删除时间	正常-空值，删除-yyyy-mm-dd hh:MM:ss
     */
    private String deletedTm;
}
